package com.linkgie.galaxyframework.crypto;

/**
 * 算法属性；
 * 
 * @author liso
 *
 */
public interface AlgorithmAttributes {

	/**
	 * 是否可用于加密；<p>
	 * 
	 * 如果为 true，表示算法可用于加密，其对应的密码服务（{@link CryptoService}）是加密操作 {@link CipherFunc} 的实例；
	 * 
	 * @return
	 */
	boolean isEncryptable();

	/**
	 * 是否可用于签名；<p>
	 * 
	 * 如果为 true，表示算法可用于签名，其对应的密码服务（{@link CryptoService}）是加密操作 {@link SignatureFunc} 的实例；
	 * 
	 * @return
	 */
	boolean isSignable();

}
